const Wxuser = require('../models/wxuser')
var moment = require('moment');

const user = {
    saveUserInfo:function(userInfo,session_key,skey){
        const uid = userInfo.openId,
            create_time = moment().format('YYYY-MM-DD HH:mm:ss'),
            update_time = create_time;
        const insertObj = {
            'uid':uid,
            'created_time':create_time,
            'uname':userInfo.nickName,
            'ugender':userInfo.gender,
            'uaddress':userInfo.province+','+userInfo.country,
            'update_time':update_time,
            'skey':skey,
            'session_key':session_key,
            'uavatar':userInfo.avatarUrl
        }
        const updateObj = {
            'uname':userInfo.nickName,
            'ugender':userInfo.gender,
            'uaddress':userInfo.province+','+userInfo.country,
            'update_time':update_time,
            'skey':skey,
            'session_key':session_key,
            'uavatar':userInfo.avatarUrl
        }
        
        return Wxuser.findOneAndUpdate({uid:uid},updateObj,{new:true})
            .then(function(user){
                if(user){
                    return {
                        code:0,
                        msg:'更新成功',
                        userInfo,
                        skey
                    }
                }else {
                    return new Wxuser(insertObj).save()
                        .then(function(user){
                            return {
                                code:0,
                                msg:'注册成功',
                                userInfo,
                                skey
                            }
                        })
                }
            })
            .then(function(res){
                return res
            })
        // return Wxuser.findOneAndUpdate({uid:uid},updateObj,{new:true},function(err,user){
        //     if(err){
        //         console.log(err)
        //         return {
        //             code:500,
        //             msg:'更新错误',
        //             err:err
        //         }
        //     }else if(user){
        //         return {
        //             code:0,
        //             msg:'更新成功',
        //             user
        //         }
        //     }else if(!user) {
        //         return new Wxuser(insertObj).save(function(err,data){
        //             if(err){
        //                 console.log(err)
        //                 return {code:500,
        //                     msg:'更新错误',
        //                     err:err}
        //             }
        //             return{
        //                 code:0,
        //                 msg:'注册成功',
        //                 user
        //             }
        //         })
        //     }
        // })


    }
}

module.exports = user